package com.wicket.okrapp.biz.service.dto.req;

import com.wicket.okrapp.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import javax.validation.constraints.NotNull;
import lombok.Data;

/**
 * @desc QueryTargetSpectacularCycleInfoDetailReqDto
 * @使用场景
 */
@Data
public class QueryTargetSpectacularCycleInfoDetailReqDto
  extends BaseDto
  implements Serializable {

  /**
   * 大屏入口类型编码 TOP_ENTER:高层入口 MID_ENTER:中层入口 ROOT_ENTER:基层入口 PERSON_ENTER:个人入口 PROJECT_ENTER:项目入口
   */
  @NotNull(message = "大屏入口类型编码不能为空")
  @ApiModelProperty("大屏入口类型编码")
  private String dashboardEnterTypeCode;

  /**
   * 大屏开启类型 ONLY_OPEN_TARGET_DASHBOARD:只开目标规划大屏 ONLY_OPEN_OTHER_DASHBOARD:只开其他大屏 OPEN_TARGET_OTHER_DASHBOARD:开目标规划与其他大屏
   */
  @NotNull(message = "大屏开启类型不能为空")
  @ApiModelProperty("大屏开启类型")
  private String dashboardOpenTypeCode;

  /**
   * 被评对象目标周期ID
   */
  @ApiModelProperty("被评对象目标周期ID")
  private String evaObjTargetCycleId;

  /**
   * 归属评价模板ID
   */
  @ApiModelProperty("归属评价模板ID")
  private String evaluationTemplateId;

  /**
   * 周期开始时间
   */
  @ApiModelProperty("周期开始时间")
  private Date cycleStartTime;

  /**
   * 周期结束时间
   */
  @ApiModelProperty("周期结束时间")
  private Date cycleEndTime;

  /**
   * 创建于空间ID
   */
  @NotNull(message = "创建于空间ID不能为空")
  @ApiModelProperty("创建于空间ID")
  private String spaceId;

}
